package com.moss.cloud.plugins.api.model.from;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;

@Data
public class ModelFieldFrom implements Serializable {
    /**表ID(模型)*/
    private Long modelId;
    /**字段*/
    @NotBlank(message = "字段不能为空")
    @Size(max = 64,message = "字段长度不能超过64位")
    private String field;
    /**排序*/
    @NotNull(message = "排序不能为空")
    private Integer orderNum;
    /**字段说明*/
    @NotBlank(message = "字段说明不能为空")
    @Size(max = 100,message = "字段说明长度不能超过100位")
    private String fieldComment;
    /**字段选择项中间用/隔开*/
    @Size(max = 1000,message = "字段选择项长度不能超过1000位")
    private String fieldSelect;
    /**数据类型*/
    @NotBlank(message = "数据类型不能为空")
    @Size(max = 10,message = "数据类型长度不能超过10位")
    private String dataType;
    /**是否非空（false:空，true:非空）*/
    @NotNull(message = "是否非空不能为空")
    private Boolean nonEmpty;
    /**是否主键（false:不是，true:是）*/
    @NotNull(message = "是否主键不能为空")
    private Boolean primaryKey;
    /**最大长度*/
    private Integer maxLength;
    /**是否默认字段（false:不是，true:是）*/
    @NotNull(message = "是否默认字段不能为空")
    private Boolean isDefault;
    /**是否form表单参数（false:不是，true:是）*/
    @NotNull(message = "是否form表单参数不能为空")
    private Boolean isForm;
    /**是否查询参数（false:不是，true:是）*/
    @NotNull(message = "是否查询参数不能为空")
    private Boolean isQuery;
    /**保留小数位*/
    private Integer reserve;
}
